#pragma once
#include "CLComTicks.h"
#ifdef Q_OS_WINDOWS
#include <windows.h>
#endif
class CRealTimcsEx :
	public CCLComTicks
{
private:
	std::string m_name;
	bool	m_bStart;
#ifdef Q_OS_WINDOWS
	LARGE_INTEGER m_freq;
	LARGE_INTEGER m_startTicks;
	LARGE_INTEGER m_endTicks;
#else
    qint64 m_freq;
    qint64 m_startTicks;
    qint64 m_endTicks;
#endif

    qint64 m_llMicrosecond;
	double m_dMillisecond;
public:
	CRealTimcsEx(std::string name);
	CRealTimcsEx();
    virtual ~CRealTimcsEx();
	void Reset();
	void Start();
	void Pause();
	void End();
	double Gaps();
	double GetCurrentGaps();
	std::string Gapstr();
	void AddGap(double dTicks);
};
